Public Class frmGenerarMapaEstatico
    Public MatrizCaminos(,,) As Integer
    Dim DistanciaMaxima As Integer
    Dim cantCiudades As Integer
    Dim autopista As Integer = 10
    Dim ruta As Integer = 5
    Dim tierra As Integer = 1
    Dim generador As New Random()

    Public Sub New()
        Me.InitializeComponent()
        Me.cmbMapas.Items.Add("Matriz de 4 ciudades")
        Me.cmbMapas.Items.Add("Matriz de 7 ciudades")
        Me.cmbMapas.Items.Add("Matriz de 8 ciudades")
        Me.cmbMapas.Items.Add("Matriz de 12 ciudades")
        Me.cmbMapas.Items.Add("Matriz de 15 ciudades")
        Me.cmbMapas.SelectedIndex = 0
    End Sub

    Sub generarMatriz4ciudades()
        Me.cantCiudades = 4
        ReDim MatrizCaminos(3, 3, 1)

        Me.MatrizCaminos(0, 0, 0) = 0
        Me.MatrizCaminos(0, 0, 1) = 0
        Me.MatrizCaminos(0, 1, 0) = 66
        Me.MatrizCaminos(0, 1, 1) = ruta
        Me.MatrizCaminos(0, 2, 0) = 47
        Me.MatrizCaminos(0, 2, 1) = tierra
        Me.MatrizCaminos(0, 3, 0) = 0
        Me.MatrizCaminos(0, 3, 1) = 0
        Me.MatrizCaminos(1, 0, 0) = 66
        Me.MatrizCaminos(1, 0, 1) = ruta
        Me.MatrizCaminos(1, 1, 0) = 0
        Me.MatrizCaminos(1, 1, 1) = 0
        Me.MatrizCaminos(1, 2, 0) = 46
        Me.MatrizCaminos(1, 2, 1) = autopista
        Me.MatrizCaminos(1, 3, 0) = 90
        Me.MatrizCaminos(1, 3, 1) = tierra
        Me.MatrizCaminos(2, 0, 0) = 47
        Me.MatrizCaminos(2, 0, 1) = tierra
        Me.MatrizCaminos(2, 1, 0) = 46
        Me.MatrizCaminos(2, 1, 1) = autopista
        Me.MatrizCaminos(2, 2, 0) = 0
        Me.MatrizCaminos(2, 2, 1) = 0
        Me.MatrizCaminos(2, 3, 0) = 0
        Me.MatrizCaminos(2, 3, 1) = 0
        Me.MatrizCaminos(3, 0, 0) = 0
        Me.MatrizCaminos(3, 0, 1) = 0
        Me.MatrizCaminos(3, 1, 0) = 90
        Me.MatrizCaminos(3, 1, 1) = tierra
        Me.MatrizCaminos(3, 2, 0) = 0
        Me.MatrizCaminos(3, 2, 1) = 0
        Me.MatrizCaminos(3, 3, 0) = 0
        Me.MatrizCaminos(3, 3, 1) = 0
    End Sub

    Sub generarMatriz7ciudades()
        Me.cantCiudades = 7
        ReDim MatrizCaminos(6, 6, 1)

        Me.MatrizCaminos(0, 0, 0) = 0
        Me.MatrizCaminos(0, 0, 1) = 0
        Me.MatrizCaminos(0, 1, 0) = 0
        Me.MatrizCaminos(0, 1, 1) = 0
        Me.MatrizCaminos(0, 2, 0) = 0
        Me.MatrizCaminos(0, 2, 1) = 0
        Me.MatrizCaminos(0, 3, 0) = 75
        Me.MatrizCaminos(0, 3, 1) = ruta
        Me.MatrizCaminos(0, 4, 0) = 65
        Me.MatrizCaminos(0, 4, 1) = ruta
        Me.MatrizCaminos(0, 5, 0) = 0
        Me.MatrizCaminos(0, 5, 1) = 0
        Me.MatrizCaminos(0, 6, 0) = 32
        Me.MatrizCaminos(0, 6, 1) = autopista
        Me.MatrizCaminos(1, 0, 0) = 0
        Me.MatrizCaminos(1, 0, 1) = 0
        Me.MatrizCaminos(1, 1, 0) = 0
        Me.MatrizCaminos(1, 1, 1) = 0
        Me.MatrizCaminos(1, 2, 0) = 0
        Me.MatrizCaminos(1, 2, 1) = 0
        Me.MatrizCaminos(1, 3, 0) = 0
        Me.MatrizCaminos(1, 3, 1) = 0
        Me.MatrizCaminos(1, 4, 0) = 0
        Me.MatrizCaminos(1, 4, 1) = 0
        Me.MatrizCaminos(1, 5, 0) = 15
        Me.MatrizCaminos(1, 5, 1) = tierra
        Me.MatrizCaminos(1, 6, 0) = 94
        Me.MatrizCaminos(1, 6, 1) = autopista
        Me.MatrizCaminos(2, 0, 0) = 0
        Me.MatrizCaminos(2, 0, 1) = 0
        Me.MatrizCaminos(2, 1, 0) = 0
        Me.MatrizCaminos(2, 1, 1) = 0
        Me.MatrizCaminos(2, 2, 0) = 0
        Me.MatrizCaminos(2, 2, 1) = 0
        Me.MatrizCaminos(2, 3, 0) = 41
        Me.MatrizCaminos(2, 3, 1) = ruta
        Me.MatrizCaminos(2, 4, 0) = 0
        Me.MatrizCaminos(2, 4, 1) = 0
        Me.MatrizCaminos(2, 5, 0) = 0
        Me.MatrizCaminos(2, 5, 1) = 0
        Me.MatrizCaminos(2, 6, 0) = 0
        Me.MatrizCaminos(2, 6, 1) = 0
        Me.MatrizCaminos(3, 0, 0) = 75
        Me.MatrizCaminos(3, 0, 1) = ruta
        Me.MatrizCaminos(3, 1, 0) = 0
        Me.MatrizCaminos(3, 1, 1) = 0
        Me.MatrizCaminos(3, 2, 0) = 41
        Me.MatrizCaminos(3, 2, 1) = ruta
        Me.MatrizCaminos(3, 3, 0) = 0
        Me.MatrizCaminos(3, 3, 1) = 0
        Me.MatrizCaminos(3, 4, 0) = 0
        Me.MatrizCaminos(3, 4, 1) = 0
        Me.MatrizCaminos(3, 5, 0) = 0
        Me.MatrizCaminos(3, 5, 1) = 0
        Me.MatrizCaminos(3, 6, 0) = 0
        Me.MatrizCaminos(3, 6, 1) = 0
        Me.MatrizCaminos(4, 0, 0) = 65
        Me.MatrizCaminos(4, 0, 1) = ruta
        Me.MatrizCaminos(4, 1, 0) = 0
        Me.MatrizCaminos(4, 1, 1) = 0
        Me.MatrizCaminos(4, 2, 0) = 0
        Me.MatrizCaminos(4, 2, 1) = 0
        Me.MatrizCaminos(4, 3, 0) = 0
        Me.MatrizCaminos(4, 3, 1) = 0
        Me.MatrizCaminos(4, 4, 0) = 0
        Me.MatrizCaminos(4, 4, 1) = 0
        Me.MatrizCaminos(4, 5, 0) = 92
        Me.MatrizCaminos(4, 5, 1) = autopista
        Me.MatrizCaminos(4, 6, 0) = 0
        Me.MatrizCaminos(4, 6, 1) = 0
        Me.MatrizCaminos(5, 0, 0) = 0
        Me.MatrizCaminos(5, 0, 1) = 0
        Me.MatrizCaminos(5, 1, 0) = 15
        Me.MatrizCaminos(5, 1, 1) = tierra
        Me.MatrizCaminos(5, 2, 0) = 0
        Me.MatrizCaminos(5, 2, 1) = 0
        Me.MatrizCaminos(5, 3, 0) = 0
        Me.MatrizCaminos(5, 3, 1) = 0
        Me.MatrizCaminos(5, 4, 0) = 92
        Me.MatrizCaminos(5, 4, 1) = autopista
        Me.MatrizCaminos(5, 5, 0) = 0
        Me.MatrizCaminos(5, 5, 1) = 0
        Me.MatrizCaminos(5, 6, 0) = 0
        Me.MatrizCaminos(5, 6, 1) = 0
        Me.MatrizCaminos(6, 0, 0) = 32
        Me.MatrizCaminos(6, 0, 1) = autopista
        Me.MatrizCaminos(6, 1, 0) = 94
        Me.MatrizCaminos(6, 1, 1) = autopista
        Me.MatrizCaminos(6, 2, 0) = 0
        Me.MatrizCaminos(6, 2, 1) = 0
        Me.MatrizCaminos(6, 3, 0) = 0
        Me.MatrizCaminos(6, 3, 1) = 0
        Me.MatrizCaminos(6, 4, 0) = 0
        Me.MatrizCaminos(6, 4, 1) = 0
        Me.MatrizCaminos(6, 5, 0) = 0
        Me.MatrizCaminos(6, 5, 1) = 0
        Me.MatrizCaminos(6, 6, 0) = 0
        Me.MatrizCaminos(6, 6, 1) = 0
    End Sub

    Sub generarMatriz8ciudades()
        Me.cantCiudades = 8
        Dim maximo As Integer = 7
        ReDim MatrizCaminos(maximo, maximo, 1)

        For i As Integer = 0 To maximo
            For j As Integer = i To maximo
                Select Case i
                    Case 0
                        Select Case j
                            Case 2
                                'Distancia de i a j
                                Me.MatrizCaminos(i, j, 0) = 100
                                Me.MatrizCaminos(i, j, 1) = autopista
                                'Distancia de j a i
                                Me.MatrizCaminos(j, i, 0) = 100
                                Me.MatrizCaminos(j, i, 1) = autopista
                            Case 4
                                'Distancia de i a j
                                Me.MatrizCaminos(i, j, 0) = 200
                                Me.MatrizCaminos(i, j, 1) = autopista
                                'Distancia de j a i
                                Me.MatrizCaminos(j, i, 0) = 200
                                Me.MatrizCaminos(j, i, 1) = autopista
                            Case Else
                                'Distancia de i a j
                                Me.MatrizCaminos(i, j, 0) = 0
                                Me.MatrizCaminos(i, j, 1) = 0
                                'Distancia de j a i
                                Me.MatrizCaminos(j, i, 0) = 0
                                Me.MatrizCaminos(j, i, 1) = 0
                        End Select
                    Case 1
                        Select Case j
                            Case 2
                                'Distancia de i a j
                                Me.MatrizCaminos(i, j, 0) = 30
                                Me.MatrizCaminos(i, j, 1) = tierra
                                'Distancia de j a i
                                Me.MatrizCaminos(j, i, 0) = 30
                                Me.MatrizCaminos(j, i, 1) = tierra
                            Case 3
                                'Distancia de i a j
                                Me.MatrizCaminos(i, j, 0) = 100
                                Me.MatrizCaminos(i, j, 1) = autopista
                                'Distancia de j a i
                                Me.MatrizCaminos(j, i, 0) = 100
                                Me.MatrizCaminos(j, i, 1) = autopista
                            Case Else
                                'Distancia de i a j
                                Me.MatrizCaminos(i, j, 0) = 0
                                Me.MatrizCaminos(i, j, 1) = 0
                                'Distancia de j a i
                                Me.MatrizCaminos(j, i, 0) = 0
                                Me.MatrizCaminos(j, i, 1) = 0
                        End Select
                    Case 2
                        Select Case j
                            Case 3
                                'Distancia de i a j
                                Me.MatrizCaminos(i, j, 0) = 50
                                Me.MatrizCaminos(i, j, 1) = ruta
                                'Distancia de j a i
                                Me.MatrizCaminos(j, i, 0) = 50
                                Me.MatrizCaminos(j, i, 1) = ruta
                            Case 4
                                'Distancia de i a j
                                Me.MatrizCaminos(i, j, 0) = 60
                                Me.MatrizCaminos(i, j, 1) = autopista
                                'Distancia de j a i
                                Me.MatrizCaminos(j, i, 0) = 60
                                Me.MatrizCaminos(j, i, 1) = autopista
                            Case Else
                                'Distancia de i a j
                                Me.MatrizCaminos(i, j, 0) = 0
                                Me.MatrizCaminos(i, j, 1) = 0
                                'Distancia de j a i
                                Me.MatrizCaminos(j, i, 0) = 0
                                Me.MatrizCaminos(j, i, 1) = 0
                        End Select
                    Case 3
                        Select Case j
                            Case 4
                                'Distancia de i a j
                                Me.MatrizCaminos(i, j, 0) = 80
                                Me.MatrizCaminos(i, j, 1) = ruta
                                'Distancia de j a i
                                Me.MatrizCaminos(j, i, 0) = 80
                                Me.MatrizCaminos(j, i, 1) = ruta
                            Case 5
                                'Distancia de i a j
                                Me.MatrizCaminos(i, j, 0) = 80
                                Me.MatrizCaminos(i, j, 1) = tierra
                                'Distancia de j a i
                                Me.MatrizCaminos(j, i, 0) = 80
                                Me.MatrizCaminos(j, i, 1) = tierra
                            Case Else
                                'Distancia de i a j
                                Me.MatrizCaminos(i, j, 0) = 0
                                Me.MatrizCaminos(i, j, 1) = 0
                                'Distancia de j a i
                                Me.MatrizCaminos(j, i, 0) = 0
                                Me.MatrizCaminos(j, i, 1) = 0
                        End Select
                    Case 4
                        Select Case j
                            Case 5
                                'Distancia de i a j
                                Me.MatrizCaminos(i, j, 0) = 100
                                Me.MatrizCaminos(i, j, 1) = autopista
                                'Distancia de j a i
                                Me.MatrizCaminos(j, i, 0) = 100
                                Me.MatrizCaminos(j, i, 1) = autopista
                            Case 6
                                'Distancia de i a j
                                Me.MatrizCaminos(i, j, 0) = 50
                                Me.MatrizCaminos(i, j, 1) = ruta
                                'Distancia de j a i
                                Me.MatrizCaminos(j, i, 0) = 50
                                Me.MatrizCaminos(j, i, 1) = ruta
                            Case 7
                                'Distancia de i a j
                                Me.MatrizCaminos(i, j, 0) = 100
                                Me.MatrizCaminos(i, j, 1) = tierra
                                'Distancia de j a i
                                Me.MatrizCaminos(j, i, 0) = 100
                                Me.MatrizCaminos(j, i, 1) = tierra
                            Case Else
                                'Distancia de i a j
                                Me.MatrizCaminos(i, j, 0) = 0
                                Me.MatrizCaminos(i, j, 1) = 0
                                'Distancia de j a i
                                Me.MatrizCaminos(j, i, 0) = 0
                                Me.MatrizCaminos(j, i, 1) = 0

                        End Select
                    Case 5
                        Select Case j
                            Case 6
                                'Distancia de i a j
                                Me.MatrizCaminos(i, j, 0) = 80
                                Me.MatrizCaminos(i, j, 1) = ruta
                                'Distancia de j a i
                                Me.MatrizCaminos(j, i, 0) = 80
                                Me.MatrizCaminos(j, i, 1) = ruta
                            Case Else
                                'Distancia de i a j
                                Me.MatrizCaminos(i, j, 0) = 0
                                Me.MatrizCaminos(i, j, 1) = 0
                                'Distancia de j a i
                                Me.MatrizCaminos(j, i, 0) = 0
                                Me.MatrizCaminos(j, i, 1) = 0
                        End Select
                    Case Else
                        'Distancia de i a j
                        Me.MatrizCaminos(i, j, 0) = 0
                        Me.MatrizCaminos(i, j, 1) = 0
                        'Distancia de j a i
                        Me.MatrizCaminos(j, i, 0) = 0
                        Me.MatrizCaminos(j, i, 1) = 0
                End Select
            Next
        Next
    End Sub

    Sub generarMatriz12ciudades()
        Me.cantCiudades = 12
        ReDim Me.MatrizCaminos(11, 11, 1)

        Me.MatrizCaminos(0, 0, 0) = 0
        Me.MatrizCaminos(0, 0, 1) = 0
        Me.MatrizCaminos(0, 1, 0) = 0
        Me.MatrizCaminos(0, 1, 1) = 0
        Me.MatrizCaminos(0, 2, 0) = 0
        Me.MatrizCaminos(0, 2, 1) = 0
        Me.MatrizCaminos(0, 3, 0) = 0
        Me.MatrizCaminos(0, 3, 1) = 0
        Me.MatrizCaminos(0, 4, 0) = 0
        Me.MatrizCaminos(0, 4, 1) = 0
        Me.MatrizCaminos(0, 5, 0) = 8
        Me.MatrizCaminos(0, 5, 1) = ruta
        Me.MatrizCaminos(0, 6, 0) = 0
        Me.MatrizCaminos(0, 6, 1) = 0
        Me.MatrizCaminos(0, 7, 0) = 0
        Me.MatrizCaminos(0, 7, 1) = 0
        Me.MatrizCaminos(0, 8, 0) = 0
        Me.MatrizCaminos(0, 8, 1) = 0
        Me.MatrizCaminos(0, 9, 0) = 0
        Me.MatrizCaminos(0, 9, 1) = 0
        Me.MatrizCaminos(0, 10, 0) = 97
        Me.MatrizCaminos(0, 10, 1) = tierra
        Me.MatrizCaminos(0, 11, 0) = 78
        Me.MatrizCaminos(0, 11, 1) = autopista
        Me.MatrizCaminos(1, 0, 0) = 0
        Me.MatrizCaminos(1, 0, 1) = 0
        Me.MatrizCaminos(1, 1, 0) = 0
        Me.MatrizCaminos(1, 1, 1) = 0
        Me.MatrizCaminos(1, 2, 0) = 0
        Me.MatrizCaminos(1, 2, 1) = 0
        Me.MatrizCaminos(1, 3, 0) = 0
        Me.MatrizCaminos(1, 3, 1) = 0
        Me.MatrizCaminos(1, 4, 0) = 0
        Me.MatrizCaminos(1, 4, 1) = 0
        Me.MatrizCaminos(1, 5, 0) = 0
        Me.MatrizCaminos(1, 5, 1) = 0
        Me.MatrizCaminos(1, 6, 0) = 0
        Me.MatrizCaminos(1, 6, 1) = 0
        Me.MatrizCaminos(1, 7, 0) = 13
        Me.MatrizCaminos(1, 7, 1) = tierra
        Me.MatrizCaminos(1, 8, 0) = 0
        Me.MatrizCaminos(1, 8, 1) = 0
        Me.MatrizCaminos(1, 9, 0) = 15
        Me.MatrizCaminos(1, 9, 1) = autopista
        Me.MatrizCaminos(1, 10, 0) = 0
        Me.MatrizCaminos(1, 10, 1) = 0
        Me.MatrizCaminos(1, 11, 0) = 0
        Me.MatrizCaminos(1, 11, 1) = 0
        Me.MatrizCaminos(2, 0, 0) = 0
        Me.MatrizCaminos(2, 0, 1) = 0
        Me.MatrizCaminos(2, 1, 0) = 0
        Me.MatrizCaminos(2, 1, 1) = 0
        Me.MatrizCaminos(2, 2, 0) = 0
        Me.MatrizCaminos(2, 2, 1) = 0
        Me.MatrizCaminos(2, 3, 0) = 0
        Me.MatrizCaminos(2, 3, 1) = 0
        Me.MatrizCaminos(2, 4, 0) = 0
        Me.MatrizCaminos(2, 4, 1) = 0
        Me.MatrizCaminos(2, 5, 0) = 0
        Me.MatrizCaminos(2, 5, 1) = 0
        Me.MatrizCaminos(2, 6, 0) = 0
        Me.MatrizCaminos(2, 6, 1) = 0
        Me.MatrizCaminos(2, 7, 0) = 48
        Me.MatrizCaminos(2, 7, 1) = autopista
        Me.MatrizCaminos(2, 8, 0) = 0
        Me.MatrizCaminos(2, 8, 1) = 0
        Me.MatrizCaminos(2, 9, 0) = 0
        Me.MatrizCaminos(2, 9, 1) = 0
        Me.MatrizCaminos(2, 10, 0) = 0
        Me.MatrizCaminos(2, 10, 1) = 0
        Me.MatrizCaminos(2, 11, 0) = 92
        Me.MatrizCaminos(2, 11, 1) = autopista
        Me.MatrizCaminos(3, 0, 0) = 0
        Me.MatrizCaminos(3, 0, 1) = 0
        Me.MatrizCaminos(3, 1, 0) = 0
        Me.MatrizCaminos(3, 1, 1) = 0
        Me.MatrizCaminos(3, 2, 0) = 0
        Me.MatrizCaminos(3, 2, 1) = 0
        Me.MatrizCaminos(3, 3, 0) = 0
        Me.MatrizCaminos(3, 3, 1) = 0
        Me.MatrizCaminos(3, 4, 0) = 0
        Me.MatrizCaminos(3, 4, 1) = 0
        Me.MatrizCaminos(3, 5, 0) = 0
        Me.MatrizCaminos(3, 5, 1) = 0
        Me.MatrizCaminos(3, 6, 0) = 0
        Me.MatrizCaminos(3, 6, 1) = 0
        Me.MatrizCaminos(3, 7, 0) = 3
        Me.MatrizCaminos(3, 7, 1) = autopista
        Me.MatrizCaminos(3, 8, 0) = 30
        Me.MatrizCaminos(3, 8, 1) = ruta
        Me.MatrizCaminos(3, 9, 0) = 78
        Me.MatrizCaminos(3, 9, 1) = tierra
        Me.MatrizCaminos(3, 10, 0) = 48
        Me.MatrizCaminos(3, 10, 1) = autopista
        Me.MatrizCaminos(3, 11, 0) = 0
        Me.MatrizCaminos(3, 11, 1) = 0
        Me.MatrizCaminos(4, 0, 0) = 0
        Me.MatrizCaminos(4, 0, 1) = 0
        Me.MatrizCaminos(4, 1, 0) = 0
        Me.MatrizCaminos(4, 1, 1) = 0
        Me.MatrizCaminos(4, 2, 0) = 0
        Me.MatrizCaminos(4, 2, 1) = 0
        Me.MatrizCaminos(4, 3, 0) = 0
        Me.MatrizCaminos(4, 3, 1) = 0
        Me.MatrizCaminos(4, 4, 0) = 0
        Me.MatrizCaminos(4, 4, 1) = 0
        Me.MatrizCaminos(4, 5, 0) = 12
        Me.MatrizCaminos(4, 5, 1) = ruta
        Me.MatrizCaminos(4, 6, 0) = 0
        Me.MatrizCaminos(4, 6, 1) = 0
        Me.MatrizCaminos(4, 7, 0) = 0
        Me.MatrizCaminos(4, 7, 1) = 0
        Me.MatrizCaminos(4, 8, 0) = 5
        Me.MatrizCaminos(4, 8, 1) = autopista
        Me.MatrizCaminos(4, 9, 0) = 0
        Me.MatrizCaminos(4, 9, 1) = 0
        Me.MatrizCaminos(4, 10, 0) = 0
        Me.MatrizCaminos(4, 10, 1) = 0
        Me.MatrizCaminos(4, 11, 0) = 0
        Me.MatrizCaminos(4, 11, 1) = 0
        Me.MatrizCaminos(5, 0, 0) = 8
        Me.MatrizCaminos(5, 0, 1) = ruta
        Me.MatrizCaminos(5, 1, 0) = 0
        Me.MatrizCaminos(5, 1, 1) = 0
        Me.MatrizCaminos(5, 2, 0) = 0
        Me.MatrizCaminos(5, 2, 1) = 0
        Me.MatrizCaminos(5, 3, 0) = 0
        Me.MatrizCaminos(5, 3, 1) = 0
        Me.MatrizCaminos(5, 4, 0) = 12
        Me.MatrizCaminos(5, 4, 1) = ruta
        Me.MatrizCaminos(5, 5, 0) = 0
        Me.MatrizCaminos(5, 5, 1) = 0
        Me.MatrizCaminos(5, 6, 0) = 8
        Me.MatrizCaminos(5, 6, 1) = ruta
        Me.MatrizCaminos(5, 7, 0) = 0
        Me.MatrizCaminos(5, 7, 1) = 0
        Me.MatrizCaminos(5, 8, 0) = 0
        Me.MatrizCaminos(5, 8, 1) = 0
        Me.MatrizCaminos(5, 9, 0) = 0
        Me.MatrizCaminos(5, 9, 1) = 0
        Me.MatrizCaminos(5, 10, 0) = 70
        Me.MatrizCaminos(5, 10, 1) = autopista
        Me.MatrizCaminos(5, 11, 0) = 0
        Me.MatrizCaminos(5, 11, 1) = 0
        Me.MatrizCaminos(6, 0, 0) = 0
        Me.MatrizCaminos(6, 0, 1) = 0
        Me.MatrizCaminos(6, 1, 0) = 0
        Me.MatrizCaminos(6, 1, 1) = 0
        Me.MatrizCaminos(6, 2, 0) = 0
        Me.MatrizCaminos(6, 2, 1) = 0
        Me.MatrizCaminos(6, 3, 0) = 0
        Me.MatrizCaminos(6, 3, 1) = 0
        Me.MatrizCaminos(6, 4, 0) = 0
        Me.MatrizCaminos(6, 4, 1) = 0
        Me.MatrizCaminos(6, 5, 0) = 8
        Me.MatrizCaminos(6, 5, 1) = ruta
        Me.MatrizCaminos(6, 6, 0) = 0
        Me.MatrizCaminos(6, 6, 1) = 0
        Me.MatrizCaminos(6, 7, 0) = 62
        Me.MatrizCaminos(6, 7, 1) = ruta
        Me.MatrizCaminos(6, 8, 0) = 0
        Me.MatrizCaminos(6, 8, 1) = 0
        Me.MatrizCaminos(6, 9, 0) = 0
        Me.MatrizCaminos(6, 9, 1) = 0
        Me.MatrizCaminos(6, 10, 0) = 0
        Me.MatrizCaminos(6, 10, 1) = 0
        Me.MatrizCaminos(6, 11, 0) = 0
        Me.MatrizCaminos(6, 11, 1) = 0
        Me.MatrizCaminos(7, 0, 0) = 0
        Me.MatrizCaminos(7, 0, 1) = 0
        Me.MatrizCaminos(7, 1, 0) = 13
        Me.MatrizCaminos(7, 1, 1) = tierra
        Me.MatrizCaminos(7, 2, 0) = 48
        Me.MatrizCaminos(7, 2, 1) = autopista
        Me.MatrizCaminos(7, 3, 0) = 3
        Me.MatrizCaminos(7, 3, 1) = autopista
        Me.MatrizCaminos(7, 4, 0) = 0
        Me.MatrizCaminos(7, 4, 1) = 0
        Me.MatrizCaminos(7, 5, 0) = 0
        Me.MatrizCaminos(7, 5, 1) = 0
        Me.MatrizCaminos(7, 6, 0) = 62
        Me.MatrizCaminos(7, 6, 1) = ruta
        Me.MatrizCaminos(7, 7, 0) = 0
        Me.MatrizCaminos(7, 7, 1) = 0
        Me.MatrizCaminos(7, 8, 0) = 0
        Me.MatrizCaminos(7, 8, 1) = 0
        Me.MatrizCaminos(7, 9, 0) = 0
        Me.MatrizCaminos(7, 9, 1) = 0
        Me.MatrizCaminos(7, 10, 0) = 0
        Me.MatrizCaminos(7, 10, 1) = 0
        Me.MatrizCaminos(7, 11, 0) = 0
        Me.MatrizCaminos(7, 11, 1) = 0
        Me.MatrizCaminos(8, 0, 0) = 0
        Me.MatrizCaminos(8, 0, 1) = 0
        Me.MatrizCaminos(8, 1, 0) = 0
        Me.MatrizCaminos(8, 1, 1) = 0
        Me.MatrizCaminos(8, 2, 0) = 0
        Me.MatrizCaminos(8, 2, 1) = 0
        Me.MatrizCaminos(8, 3, 0) = 30
        Me.MatrizCaminos(8, 3, 1) = ruta
        Me.MatrizCaminos(8, 4, 0) = 5
        Me.MatrizCaminos(8, 4, 1) = autopista
        Me.MatrizCaminos(8, 5, 0) = 0
        Me.MatrizCaminos(8, 5, 1) = 0
        Me.MatrizCaminos(8, 6, 0) = 0
        Me.MatrizCaminos(8, 6, 1) = 0
        Me.MatrizCaminos(8, 7, 0) = 0
        Me.MatrizCaminos(8, 7, 1) = 0
        Me.MatrizCaminos(8, 8, 0) = 0
        Me.MatrizCaminos(8, 8, 1) = 0
        Me.MatrizCaminos(8, 9, 0) = 66
        Me.MatrizCaminos(8, 9, 1) = autopista
        Me.MatrizCaminos(8, 10, 0) = 21
        Me.MatrizCaminos(8, 10, 1) = ruta
        Me.MatrizCaminos(8, 11, 0) = 28
        Me.MatrizCaminos(8, 11, 1) = ruta
        Me.MatrizCaminos(9, 0, 0) = 0
        Me.MatrizCaminos(9, 0, 1) = 0
        Me.MatrizCaminos(9, 1, 0) = 15
        Me.MatrizCaminos(9, 1, 1) = autopista
        Me.MatrizCaminos(9, 2, 0) = 0
        Me.MatrizCaminos(9, 2, 1) = 0
        Me.MatrizCaminos(9, 3, 0) = 78
        Me.MatrizCaminos(9, 3, 1) = tierra
        Me.MatrizCaminos(9, 4, 0) = 0
        Me.MatrizCaminos(9, 4, 1) = 0
        Me.MatrizCaminos(9, 5, 0) = 0
        Me.MatrizCaminos(9, 5, 1) = 0
        Me.MatrizCaminos(9, 6, 0) = 0
        Me.MatrizCaminos(9, 6, 1) = 0
        Me.MatrizCaminos(9, 7, 0) = 0
        Me.MatrizCaminos(9, 7, 1) = 0
        Me.MatrizCaminos(9, 8, 0) = 66
        Me.MatrizCaminos(9, 8, 1) = autopista
        Me.MatrizCaminos(9, 9, 0) = 0
        Me.MatrizCaminos(9, 9, 1) = 0
        Me.MatrizCaminos(9, 10, 0) = 0
        Me.MatrizCaminos(9, 10, 1) = 0
        Me.MatrizCaminos(9, 11, 0) = 0
        Me.MatrizCaminos(9, 11, 1) = 0
        Me.MatrizCaminos(10, 0, 0) = 97
        Me.MatrizCaminos(10, 0, 1) = tierra
        Me.MatrizCaminos(10, 1, 0) = 0
        Me.MatrizCaminos(10, 1, 1) = 0
        Me.MatrizCaminos(10, 2, 0) = 0
        Me.MatrizCaminos(10, 2, 1) = 0
        Me.MatrizCaminos(10, 3, 0) = 48
        Me.MatrizCaminos(10, 3, 1) = autopista
        Me.MatrizCaminos(10, 4, 0) = 0
        Me.MatrizCaminos(10, 4, 1) = 0
        Me.MatrizCaminos(10, 5, 0) = 70
        Me.MatrizCaminos(10, 5, 1) = autopista
        Me.MatrizCaminos(10, 6, 0) = 0
        Me.MatrizCaminos(10, 6, 1) = 0
        Me.MatrizCaminos(10, 7, 0) = 0
        Me.MatrizCaminos(10, 7, 1) = 0
        Me.MatrizCaminos(10, 8, 0) = 21
        Me.MatrizCaminos(10, 8, 1) = ruta
        Me.MatrizCaminos(10, 9, 0) = 0
        Me.MatrizCaminos(10, 9, 1) = 0
        Me.MatrizCaminos(10, 10, 0) = 0
        Me.MatrizCaminos(10, 10, 1) = 0
        Me.MatrizCaminos(10, 11, 0) = 18
        Me.MatrizCaminos(10, 11, 1) = tierra
        Me.MatrizCaminos(11, 0, 0) = 78
        Me.MatrizCaminos(11, 0, 1) = autopista
        Me.MatrizCaminos(11, 1, 0) = 0
        Me.MatrizCaminos(11, 1, 1) = 0
        Me.MatrizCaminos(11, 2, 0) = 92
        Me.MatrizCaminos(11, 2, 1) = autopista
        Me.MatrizCaminos(11, 3, 0) = 0
        Me.MatrizCaminos(11, 3, 1) = 0
        Me.MatrizCaminos(11, 4, 0) = 0
        Me.MatrizCaminos(11, 4, 1) = 0
        Me.MatrizCaminos(11, 5, 0) = 0
        Me.MatrizCaminos(11, 5, 1) = 0
        Me.MatrizCaminos(11, 6, 0) = 0
        Me.MatrizCaminos(11, 6, 1) = 0
        Me.MatrizCaminos(11, 7, 0) = 0
        Me.MatrizCaminos(11, 7, 1) = 0
        Me.MatrizCaminos(11, 8, 0) = 28
        Me.MatrizCaminos(11, 8, 1) = ruta
        Me.MatrizCaminos(11, 9, 0) = 0
        Me.MatrizCaminos(11, 9, 1) = 0
        Me.MatrizCaminos(11, 10, 0) = 18
        Me.MatrizCaminos(11, 10, 1) = tierra
        Me.MatrizCaminos(11, 11, 0) = 0
        Me.MatrizCaminos(11, 11, 1) = 0
    End Sub

    Sub generarMatriz15ciudades()
        Me.cantCiudades = 15
        ReDim Me.MatrizCaminos(14, 14, 1)

        Me.MatrizCaminos(0, 0, 0) = 0
        Me.MatrizCaminos(0, 0, 1) = 0
        Me.MatrizCaminos(0, 1, 0) = 0
        Me.MatrizCaminos(0, 1, 1) = 0
        Me.MatrizCaminos(0, 2, 0) = 15
        Me.MatrizCaminos(0, 2, 1) = ruta
        Me.MatrizCaminos(0, 3, 0) = 0
        Me.MatrizCaminos(0, 3, 1) = 0
        Me.MatrizCaminos(0, 4, 0) = 0
        Me.MatrizCaminos(0, 4, 1) = 0
        Me.MatrizCaminos(0, 5, 0) = 78
        Me.MatrizCaminos(0, 5, 1) = tierra
        Me.MatrizCaminos(0, 6, 0) = 90
        Me.MatrizCaminos(0, 6, 1) = autopista
        Me.MatrizCaminos(0, 7, 0) = 40
        Me.MatrizCaminos(0, 7, 1) = tierra
        Me.MatrizCaminos(0, 8, 0) = 0
        Me.MatrizCaminos(0, 8, 1) = 0
        Me.MatrizCaminos(0, 9, 0) = 71
        Me.MatrizCaminos(0, 9, 1) = tierra
        Me.MatrizCaminos(0, 10, 0) = 0
        Me.MatrizCaminos(0, 10, 1) = 0
        Me.MatrizCaminos(0, 11, 0) = 56
        Me.MatrizCaminos(0, 11, 1) = ruta
        Me.MatrizCaminos(0, 12, 0) = 0
        Me.MatrizCaminos(0, 12, 1) = 0
        Me.MatrizCaminos(0, 13, 0) = 8
        Me.MatrizCaminos(0, 13, 1) = tierra
        Me.MatrizCaminos(0, 14, 0) = 0
        Me.MatrizCaminos(0, 14, 1) = 0
        Me.MatrizCaminos(1, 0, 0) = 0
        Me.MatrizCaminos(1, 0, 1) = 0
        Me.MatrizCaminos(1, 1, 0) = 0
        Me.MatrizCaminos(1, 1, 1) = 0
        Me.MatrizCaminos(1, 2, 0) = 0
        Me.MatrizCaminos(1, 2, 1) = 0
        Me.MatrizCaminos(1, 3, 0) = 0
        Me.MatrizCaminos(1, 3, 1) = 0
        Me.MatrizCaminos(1, 4, 0) = 38
        Me.MatrizCaminos(1, 4, 1) = ruta
        Me.MatrizCaminos(1, 5, 0) = 0
        Me.MatrizCaminos(1, 5, 1) = 0
        Me.MatrizCaminos(1, 6, 0) = 0
        Me.MatrizCaminos(1, 6, 1) = 0
        Me.MatrizCaminos(1, 7, 0) = 0
        Me.MatrizCaminos(1, 7, 1) = 0
        Me.MatrizCaminos(1, 8, 0) = 0
        Me.MatrizCaminos(1, 8, 1) = 0
        Me.MatrizCaminos(1, 9, 0) = 0
        Me.MatrizCaminos(1, 9, 1) = 0
        Me.MatrizCaminos(1, 10, 0) = 0
        Me.MatrizCaminos(1, 10, 1) = 0
        Me.MatrizCaminos(1, 11, 0) = 0
        Me.MatrizCaminos(1, 11, 1) = 0
        Me.MatrizCaminos(1, 12, 0) = 0
        Me.MatrizCaminos(1, 12, 1) = 0
        Me.MatrizCaminos(1, 13, 0) = 0
        Me.MatrizCaminos(1, 13, 1) = 0
        Me.MatrizCaminos(1, 14, 0) = 0
        Me.MatrizCaminos(1, 14, 1) = 0
        Me.MatrizCaminos(2, 0, 0) = 15
        Me.MatrizCaminos(2, 0, 1) = ruta
        Me.MatrizCaminos(2, 1, 0) = 0
        Me.MatrizCaminos(2, 1, 1) = 0
        Me.MatrizCaminos(2, 2, 0) = 0
        Me.MatrizCaminos(2, 2, 1) = 0
        Me.MatrizCaminos(2, 3, 0) = 45
        Me.MatrizCaminos(2, 3, 1) = autopista
        Me.MatrizCaminos(2, 4, 0) = 41
        Me.MatrizCaminos(2, 4, 1) = ruta
        Me.MatrizCaminos(2, 5, 0) = 0
        Me.MatrizCaminos(2, 5, 1) = 0
        Me.MatrizCaminos(2, 6, 0) = 82
        Me.MatrizCaminos(2, 6, 1) = tierra
        Me.MatrizCaminos(2, 7, 0) = 17
        Me.MatrizCaminos(2, 7, 1) = tierra
        Me.MatrizCaminos(2, 8, 0) = 0
        Me.MatrizCaminos(2, 8, 1) = 0
        Me.MatrizCaminos(2, 9, 0) = 0
        Me.MatrizCaminos(2, 9, 1) = 0
        Me.MatrizCaminos(2, 10, 0) = 0
        Me.MatrizCaminos(2, 10, 1) = 0
        Me.MatrizCaminos(2, 11, 0) = 0
        Me.MatrizCaminos(2, 11, 1) = 0
        Me.MatrizCaminos(2, 12, 0) = 0
        Me.MatrizCaminos(2, 12, 1) = 0
        Me.MatrizCaminos(2, 13, 0) = 0
        Me.MatrizCaminos(2, 13, 1) = 0
        Me.MatrizCaminos(2, 14, 0) = 0
        Me.MatrizCaminos(2, 14, 1) = 0
        Me.MatrizCaminos(3, 0, 0) = 0
        Me.MatrizCaminos(3, 0, 1) = 0
        Me.MatrizCaminos(3, 1, 0) = 0
        Me.MatrizCaminos(3, 1, 1) = 0
        Me.MatrizCaminos(3, 2, 0) = 45
        Me.MatrizCaminos(3, 2, 1) = autopista
        Me.MatrizCaminos(3, 3, 0) = 0
        Me.MatrizCaminos(3, 3, 1) = 0
        Me.MatrizCaminos(3, 4, 0) = 0
        Me.MatrizCaminos(3, 4, 1) = 0
        Me.MatrizCaminos(3, 5, 0) = 0
        Me.MatrizCaminos(3, 5, 1) = 0
        Me.MatrizCaminos(3, 6, 0) = 0
        Me.MatrizCaminos(3, 6, 1) = 0
        Me.MatrizCaminos(3, 7, 0) = 0
        Me.MatrizCaminos(3, 7, 1) = 0
        Me.MatrizCaminos(3, 8, 0) = 0
        Me.MatrizCaminos(3, 8, 1) = 0
        Me.MatrizCaminos(3, 9, 0) = 0
        Me.MatrizCaminos(3, 9, 1) = 0
        Me.MatrizCaminos(3, 10, 0) = 0
        Me.MatrizCaminos(3, 10, 1) = 0
        Me.MatrizCaminos(3, 11, 0) = 0
        Me.MatrizCaminos(3, 11, 1) = 0
        Me.MatrizCaminos(3, 12, 0) = 2
        Me.MatrizCaminos(3, 12, 1) = tierra
        Me.MatrizCaminos(3, 13, 0) = 40
        Me.MatrizCaminos(3, 13, 1) = autopista
        Me.MatrizCaminos(3, 14, 0) = 0
        Me.MatrizCaminos(3, 14, 1) = 0
        Me.MatrizCaminos(4, 0, 0) = 0
        Me.MatrizCaminos(4, 0, 1) = 0
        Me.MatrizCaminos(4, 1, 0) = 38
        Me.MatrizCaminos(4, 1, 1) = ruta
        Me.MatrizCaminos(4, 2, 0) = 41
        Me.MatrizCaminos(4, 2, 1) = ruta
        Me.MatrizCaminos(4, 3, 0) = 0
        Me.MatrizCaminos(4, 3, 1) = 0
        Me.MatrizCaminos(4, 4, 0) = 0
        Me.MatrizCaminos(4, 4, 1) = 0
        Me.MatrizCaminos(4, 5, 0) = 0
        Me.MatrizCaminos(4, 5, 1) = 0
        Me.MatrizCaminos(4, 6, 0) = 24
        Me.MatrizCaminos(4, 6, 1) = autopista
        Me.MatrizCaminos(4, 7, 0) = 83
        Me.MatrizCaminos(4, 7, 1) = tierra
        Me.MatrizCaminos(4, 8, 0) = 0
        Me.MatrizCaminos(4, 8, 1) = 0
        Me.MatrizCaminos(4, 9, 0) = 45
        Me.MatrizCaminos(4, 9, 1) = tierra
        Me.MatrizCaminos(4, 10, 0) = 0
        Me.MatrizCaminos(4, 10, 1) = 0
        Me.MatrizCaminos(4, 11, 0) = 0
        Me.MatrizCaminos(4, 11, 1) = 0
        Me.MatrizCaminos(4, 12, 0) = 0
        Me.MatrizCaminos(4, 12, 1) = 0
        Me.MatrizCaminos(4, 13, 0) = 0
        Me.MatrizCaminos(4, 13, 1) = 0
        Me.MatrizCaminos(4, 14, 0) = 0
        Me.MatrizCaminos(4, 14, 1) = 0
        Me.MatrizCaminos(5, 0, 0) = 78
        Me.MatrizCaminos(5, 0, 1) = tierra
        Me.MatrizCaminos(5, 1, 0) = 0
        Me.MatrizCaminos(5, 1, 1) = 0
        Me.MatrizCaminos(5, 2, 0) = 0
        Me.MatrizCaminos(5, 2, 1) = 0
        Me.MatrizCaminos(5, 3, 0) = 0
        Me.MatrizCaminos(5, 3, 1) = 0
        Me.MatrizCaminos(5, 4, 0) = 0
        Me.MatrizCaminos(5, 4, 1) = 0
        Me.MatrizCaminos(5, 5, 0) = 0
        Me.MatrizCaminos(5, 5, 1) = 0
        Me.MatrizCaminos(5, 6, 0) = 76
        Me.MatrizCaminos(5, 6, 1) = autopista
        Me.MatrizCaminos(5, 7, 0) = 23
        Me.MatrizCaminos(5, 7, 1) = ruta
        Me.MatrizCaminos(5, 8, 0) = 26
        Me.MatrizCaminos(5, 8, 1) = autopista
        Me.MatrizCaminos(5, 9, 0) = 3
        Me.MatrizCaminos(5, 9, 1) = autopista
        Me.MatrizCaminos(5, 10, 0) = 42
        Me.MatrizCaminos(5, 10, 1) = tierra
        Me.MatrizCaminos(5, 11, 0) = 0
        Me.MatrizCaminos(5, 11, 1) = 0
        Me.MatrizCaminos(5, 12, 0) = 0
        Me.MatrizCaminos(5, 12, 1) = 0
        Me.MatrizCaminos(5, 13, 0) = 0
        Me.MatrizCaminos(5, 13, 1) = 0
        Me.MatrizCaminos(5, 14, 0) = 0
        Me.MatrizCaminos(5, 14, 1) = 0
        Me.MatrizCaminos(6, 0, 0) = 90
        Me.MatrizCaminos(6, 0, 1) = autopista
        Me.MatrizCaminos(6, 1, 0) = 0
        Me.MatrizCaminos(6, 1, 1) = 0
        Me.MatrizCaminos(6, 2, 0) = 82
        Me.MatrizCaminos(6, 2, 1) = tierra
        Me.MatrizCaminos(6, 3, 0) = 0
        Me.MatrizCaminos(6, 3, 1) = 0
        Me.MatrizCaminos(6, 4, 0) = 24
        Me.MatrizCaminos(6, 4, 1) = autopista
        Me.MatrizCaminos(6, 5, 0) = 76
        Me.MatrizCaminos(6, 5, 1) = autopista
        Me.MatrizCaminos(6, 6, 0) = 0
        Me.MatrizCaminos(6, 6, 1) = 0
        Me.MatrizCaminos(6, 7, 0) = 0
        Me.MatrizCaminos(6, 7, 1) = 0
        Me.MatrizCaminos(6, 8, 0) = 29
        Me.MatrizCaminos(6, 8, 1) = tierra
        Me.MatrizCaminos(6, 9, 0) = 0
        Me.MatrizCaminos(6, 9, 1) = 0
        Me.MatrizCaminos(6, 10, 0) = 0
        Me.MatrizCaminos(6, 10, 1) = 0
        Me.MatrizCaminos(6, 11, 0) = 0
        Me.MatrizCaminos(6, 11, 1) = 0
        Me.MatrizCaminos(6, 12, 0) = 0
        Me.MatrizCaminos(6, 12, 1) = 0
        Me.MatrizCaminos(6, 13, 0) = 0
        Me.MatrizCaminos(6, 13, 1) = 0
        Me.MatrizCaminos(6, 14, 0) = 0
        Me.MatrizCaminos(6, 14, 1) = 0
        Me.MatrizCaminos(7, 0, 0) = 40
        Me.MatrizCaminos(7, 0, 1) = tierra
        Me.MatrizCaminos(7, 1, 0) = 0
        Me.MatrizCaminos(7, 1, 1) = 0
        Me.MatrizCaminos(7, 2, 0) = 17
        Me.MatrizCaminos(7, 2, 1) = tierra
        Me.MatrizCaminos(7, 3, 0) = 0
        Me.MatrizCaminos(7, 3, 1) = 0
        Me.MatrizCaminos(7, 4, 0) = 83
        Me.MatrizCaminos(7, 4, 1) = tierra
        Me.MatrizCaminos(7, 5, 0) = 23
        Me.MatrizCaminos(7, 5, 1) = ruta
        Me.MatrizCaminos(7, 6, 0) = 0
        Me.MatrizCaminos(7, 6, 1) = 0
        Me.MatrizCaminos(7, 7, 0) = 0
        Me.MatrizCaminos(7, 7, 1) = 0
        Me.MatrizCaminos(7, 8, 0) = 0
        Me.MatrizCaminos(7, 8, 1) = 0
        Me.MatrizCaminos(7, 9, 0) = 0
        Me.MatrizCaminos(7, 9, 1) = 0
        Me.MatrizCaminos(7, 10, 0) = 0
        Me.MatrizCaminos(7, 10, 1) = 0
        Me.MatrizCaminos(7, 11, 0) = 0
        Me.MatrizCaminos(7, 11, 1) = 0
        Me.MatrizCaminos(7, 12, 0) = 0
        Me.MatrizCaminos(7, 12, 1) = 0
        Me.MatrizCaminos(7, 13, 0) = 0
        Me.MatrizCaminos(7, 13, 1) = 0
        Me.MatrizCaminos(7, 14, 0) = 0
        Me.MatrizCaminos(7, 14, 1) = 0
        Me.MatrizCaminos(8, 0, 0) = 0
        Me.MatrizCaminos(8, 0, 1) = 0
        Me.MatrizCaminos(8, 1, 0) = 0
        Me.MatrizCaminos(8, 1, 1) = 0
        Me.MatrizCaminos(8, 2, 0) = 0
        Me.MatrizCaminos(8, 2, 1) = 0
        Me.MatrizCaminos(8, 3, 0) = 0
        Me.MatrizCaminos(8, 3, 1) = 0
        Me.MatrizCaminos(8, 4, 0) = 0
        Me.MatrizCaminos(8, 4, 1) = 0
        Me.MatrizCaminos(8, 5, 0) = 26
        Me.MatrizCaminos(8, 5, 1) = autopista
        Me.MatrizCaminos(8, 6, 0) = 29
        Me.MatrizCaminos(8, 6, 1) = tierra
        Me.MatrizCaminos(8, 7, 0) = 0
        Me.MatrizCaminos(8, 7, 1) = 0
        Me.MatrizCaminos(8, 8, 0) = 0
        Me.MatrizCaminos(8, 8, 1) = 0
        Me.MatrizCaminos(8, 9, 0) = 0
        Me.MatrizCaminos(8, 9, 1) = 0
        Me.MatrizCaminos(8, 10, 0) = 0
        Me.MatrizCaminos(8, 10, 1) = 0
        Me.MatrizCaminos(8, 11, 0) = 0
        Me.MatrizCaminos(8, 11, 1) = 0
        Me.MatrizCaminos(8, 12, 0) = 0
        Me.MatrizCaminos(8, 12, 1) = 0
        Me.MatrizCaminos(8, 13, 0) = 0
        Me.MatrizCaminos(8, 13, 1) = 0
        Me.MatrizCaminos(8, 14, 0) = 0
        Me.MatrizCaminos(8, 14, 1) = 0
        Me.MatrizCaminos(9, 0, 0) = 71
        Me.MatrizCaminos(9, 0, 1) = tierra
        Me.MatrizCaminos(9, 1, 0) = 0
        Me.MatrizCaminos(9, 1, 1) = 0
        Me.MatrizCaminos(9, 2, 0) = 0
        Me.MatrizCaminos(9, 2, 1) = 0
        Me.MatrizCaminos(9, 3, 0) = 0
        Me.MatrizCaminos(9, 3, 1) = 0
        Me.MatrizCaminos(9, 4, 0) = 45
        Me.MatrizCaminos(9, 4, 1) = tierra
        Me.MatrizCaminos(9, 5, 0) = 3
        Me.MatrizCaminos(9, 5, 1) = autopista
        Me.MatrizCaminos(9, 6, 0) = 0
        Me.MatrizCaminos(9, 6, 1) = 0
        Me.MatrizCaminos(9, 7, 0) = 0
        Me.MatrizCaminos(9, 7, 1) = 0
        Me.MatrizCaminos(9, 8, 0) = 0
        Me.MatrizCaminos(9, 8, 1) = 0
        Me.MatrizCaminos(9, 9, 0) = 0
        Me.MatrizCaminos(9, 9, 1) = 0
        Me.MatrizCaminos(9, 10, 0) = 0
        Me.MatrizCaminos(9, 10, 1) = 0
        Me.MatrizCaminos(9, 11, 0) = 75
        Me.MatrizCaminos(9, 11, 1) = tierra
        Me.MatrizCaminos(9, 12, 0) = 0
        Me.MatrizCaminos(9, 12, 1) = 0
        Me.MatrizCaminos(9, 13, 0) = 0
        Me.MatrizCaminos(9, 13, 1) = 0
        Me.MatrizCaminos(9, 14, 0) = 0
        Me.MatrizCaminos(9, 14, 1) = 0
        Me.MatrizCaminos(10, 0, 0) = 0
        Me.MatrizCaminos(10, 0, 1) = 0
        Me.MatrizCaminos(10, 1, 0) = 0
        Me.MatrizCaminos(10, 1, 1) = 0
        Me.MatrizCaminos(10, 2, 0) = 0
        Me.MatrizCaminos(10, 2, 1) = 0
        Me.MatrizCaminos(10, 3, 0) = 0
        Me.MatrizCaminos(10, 3, 1) = 0
        Me.MatrizCaminos(10, 4, 0) = 0
        Me.MatrizCaminos(10, 4, 1) = 0
        Me.MatrizCaminos(10, 5, 0) = 42
        Me.MatrizCaminos(10, 5, 1) = tierra
        Me.MatrizCaminos(10, 6, 0) = 0
        Me.MatrizCaminos(10, 6, 1) = 0
        Me.MatrizCaminos(10, 7, 0) = 0
        Me.MatrizCaminos(10, 7, 1) = 0
        Me.MatrizCaminos(10, 8, 0) = 0
        Me.MatrizCaminos(10, 8, 1) = 0
        Me.MatrizCaminos(10, 9, 0) = 0
        Me.MatrizCaminos(10, 9, 1) = 0
        Me.MatrizCaminos(10, 10, 0) = 0
        Me.MatrizCaminos(10, 10, 1) = 0
        Me.MatrizCaminos(10, 11, 0) = 33
        Me.MatrizCaminos(10, 11, 1) = autopista
        Me.MatrizCaminos(10, 12, 0) = 0
        Me.MatrizCaminos(10, 12, 1) = 0
        Me.MatrizCaminos(10, 13, 0) = 0
        Me.MatrizCaminos(10, 13, 1) = 0
        Me.MatrizCaminos(10, 14, 0) = 0
        Me.MatrizCaminos(10, 14, 1) = 0
        Me.MatrizCaminos(11, 0, 0) = 56
        Me.MatrizCaminos(11, 0, 1) = ruta
        Me.MatrizCaminos(11, 1, 0) = 0
        Me.MatrizCaminos(11, 1, 1) = 0
        Me.MatrizCaminos(11, 2, 0) = 0
        Me.MatrizCaminos(11, 2, 1) = 0
        Me.MatrizCaminos(11, 3, 0) = 0
        Me.MatrizCaminos(11, 3, 1) = 0
        Me.MatrizCaminos(11, 4, 0) = 0
        Me.MatrizCaminos(11, 4, 1) = 0
        Me.MatrizCaminos(11, 5, 0) = 0
        Me.MatrizCaminos(11, 5, 1) = 0
        Me.MatrizCaminos(11, 6, 0) = 0
        Me.MatrizCaminos(11, 6, 1) = 0
        Me.MatrizCaminos(11, 7, 0) = 0
        Me.MatrizCaminos(11, 7, 1) = 0
        Me.MatrizCaminos(11, 8, 0) = 0
        Me.MatrizCaminos(11, 8, 1) = 0
        Me.MatrizCaminos(11, 9, 0) = 75
        Me.MatrizCaminos(11, 9, 1) = tierra
        Me.MatrizCaminos(11, 10, 0) = 33
        Me.MatrizCaminos(11, 10, 1) = autopista
        Me.MatrizCaminos(11, 11, 0) = 0
        Me.MatrizCaminos(11, 11, 1) = 0
        Me.MatrizCaminos(11, 12, 0) = 85
        Me.MatrizCaminos(11, 12, 1) = ruta
        Me.MatrizCaminos(11, 13, 0) = 0
        Me.MatrizCaminos(11, 13, 1) = 0
        Me.MatrizCaminos(11, 14, 0) = 3
        Me.MatrizCaminos(11, 14, 1) = tierra
        Me.MatrizCaminos(12, 0, 0) = 0
        Me.MatrizCaminos(12, 0, 1) = 0
        Me.MatrizCaminos(12, 1, 0) = 0
        Me.MatrizCaminos(12, 1, 1) = 0
        Me.MatrizCaminos(12, 2, 0) = 0
        Me.MatrizCaminos(12, 2, 1) = 0
        Me.MatrizCaminos(12, 3, 0) = 2
        Me.MatrizCaminos(12, 3, 1) = tierra
        Me.MatrizCaminos(12, 4, 0) = 0
        Me.MatrizCaminos(12, 4, 1) = 0
        Me.MatrizCaminos(12, 5, 0) = 0
        Me.MatrizCaminos(12, 5, 1) = 0
        Me.MatrizCaminos(12, 6, 0) = 0
        Me.MatrizCaminos(12, 6, 1) = 0
        Me.MatrizCaminos(12, 7, 0) = 0
        Me.MatrizCaminos(12, 7, 1) = 0
        Me.MatrizCaminos(12, 8, 0) = 0
        Me.MatrizCaminos(12, 8, 1) = 0
        Me.MatrizCaminos(12, 9, 0) = 0
        Me.MatrizCaminos(12, 9, 1) = 0
        Me.MatrizCaminos(12, 10, 0) = 0
        Me.MatrizCaminos(12, 10, 1) = 0
        Me.MatrizCaminos(12, 11, 0) = 85
        Me.MatrizCaminos(12, 11, 1) = ruta
        Me.MatrizCaminos(12, 12, 0) = 0
        Me.MatrizCaminos(12, 12, 1) = 0
        Me.MatrizCaminos(12, 13, 0) = 0
        Me.MatrizCaminos(12, 13, 1) = 0
        Me.MatrizCaminos(12, 14, 0) = 0
        Me.MatrizCaminos(12, 14, 1) = 0
        Me.MatrizCaminos(13, 0, 0) = 8
        Me.MatrizCaminos(13, 0, 1) = tierra
        Me.MatrizCaminos(13, 1, 0) = 0
        Me.MatrizCaminos(13, 1, 1) = 0
        Me.MatrizCaminos(13, 2, 0) = 0
        Me.MatrizCaminos(13, 2, 1) = 0
        Me.MatrizCaminos(13, 3, 0) = 40
        Me.MatrizCaminos(13, 3, 1) = autopista
        Me.MatrizCaminos(13, 4, 0) = 0
        Me.MatrizCaminos(13, 4, 1) = 0
        Me.MatrizCaminos(13, 5, 0) = 0
        Me.MatrizCaminos(13, 5, 1) = 0
        Me.MatrizCaminos(13, 6, 0) = 0
        Me.MatrizCaminos(13, 6, 1) = 0
        Me.MatrizCaminos(13, 7, 0) = 0
        Me.MatrizCaminos(13, 7, 1) = 0
        Me.MatrizCaminos(13, 8, 0) = 0
        Me.MatrizCaminos(13, 8, 1) = 0
        Me.MatrizCaminos(13, 9, 0) = 0
        Me.MatrizCaminos(13, 9, 1) = 0
        Me.MatrizCaminos(13, 10, 0) = 0
        Me.MatrizCaminos(13, 10, 1) = 0
        Me.MatrizCaminos(13, 11, 0) = 0
        Me.MatrizCaminos(13, 11, 1) = 0
        Me.MatrizCaminos(13, 12, 0) = 0
        Me.MatrizCaminos(13, 12, 1) = 0
        Me.MatrizCaminos(13, 13, 0) = 0
        Me.MatrizCaminos(13, 13, 1) = 0
        Me.MatrizCaminos(13, 14, 0) = 88
        Me.MatrizCaminos(13, 14, 1) = autopista
        Me.MatrizCaminos(14, 0, 0) = 0
        Me.MatrizCaminos(14, 0, 1) = 0
        Me.MatrizCaminos(14, 1, 0) = 0
        Me.MatrizCaminos(14, 1, 1) = 0
        Me.MatrizCaminos(14, 2, 0) = 0
        Me.MatrizCaminos(14, 2, 1) = 0
        Me.MatrizCaminos(14, 3, 0) = 0
        Me.MatrizCaminos(14, 3, 1) = 0
        Me.MatrizCaminos(14, 4, 0) = 0
        Me.MatrizCaminos(14, 4, 1) = 0
        Me.MatrizCaminos(14, 5, 0) = 0
        Me.MatrizCaminos(14, 5, 1) = 0
        Me.MatrizCaminos(14, 6, 0) = 0
        Me.MatrizCaminos(14, 6, 1) = 0
        Me.MatrizCaminos(14, 7, 0) = 0
        Me.MatrizCaminos(14, 7, 1) = 0
        Me.MatrizCaminos(14, 8, 0) = 0
        Me.MatrizCaminos(14, 8, 1) = 0
        Me.MatrizCaminos(14, 9, 0) = 0
        Me.MatrizCaminos(14, 9, 1) = 0
        Me.MatrizCaminos(14, 10, 0) = 0
        Me.MatrizCaminos(14, 10, 1) = 0
        Me.MatrizCaminos(14, 11, 0) = 3
        Me.MatrizCaminos(14, 11, 1) = tierra
        Me.MatrizCaminos(14, 12, 0) = 0
        Me.MatrizCaminos(14, 12, 1) = 0
        Me.MatrizCaminos(14, 13, 0) = 88
        Me.MatrizCaminos(14, 13, 1) = autopista
        Me.MatrizCaminos(14, 14, 0) = 0
        Me.MatrizCaminos(14, 14, 1) = 0
    End Sub

    Sub MostrarMatrizCaminos()
        Dim dtDistancias As New DataTable()
        Dim dr As DataRow

        'Genero los encabezados de las columnas
        For i As Integer = 1 To cantCiudades
            dtDistancias.Columns.Add(i)
        Next

        'Cargo el DataTable con los valores de los caminos
        For j As Integer = 0 To cantCiudades - 1
            dr = dtDistancias.NewRow()
            For k As Integer = 0 To cantCiudades - 1
                'Esto es para que solo se muestren los caminos que existan (Distantia <> 0)
                If Me.MatrizCaminos(j, k, 0) <> 0 Then
                    'Muestro el camino en el formato "Distancia(Aptitud)"
                    dr.Item(k) = Me.MatrizCaminos(j, k, 0).ToString() & "(" & Me.MatrizCaminos(j, k, 1).ToString() & ")" '
                End If
            Next
            dtDistancias.Rows.Add(dr)
        Next

        'Paso el datatable de los caminos al datagridview
        Me.dgvCiudades.DataSource = ""
        Me.dgvCiudades.DataSource = dtDistancias

        'Genero los encabezados de las filas
        For k As Integer = 0 To cantCiudades - 1
            Dim Encabezado As String = (k + 1).ToString()
            Me.dgvCiudades.Rows(k).HeaderCell.Value = Encabezado
        Next

        PuntosEstaticos.cargarPuntos()
        Ciudad.crearCiudades(MatrizCaminos.GetUpperBound(0))
        Camino.crearCaminos(MatrizCaminos)

        Me.Refresh()
    End Sub

    Private Sub btnGenerar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnGenerar.Click
        Select Case Me.cmbMapas.SelectedItem
            Case "Matriz de 4 ciudades"
                Me.generarMatriz4ciudades()
            Case "Matriz de 7 ciudades"
                Me.generarMatriz7ciudades()
            Case "Matriz de 8 ciudades"
                Me.generarMatriz8ciudades()
            Case "Matriz de 12 ciudades"
                Me.generarMatriz12ciudades()
            Case "Matriz de 15 ciudades"
                Me.generarMatriz15ciudades()
        End Select

        Me.MostrarMatrizCaminos()
        Me.btnGuardar.Enabled = True
        Me.btnMapa.Enabled = True
    End Sub

    Private Sub btnMapa_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnMapa.Click
        Dim form As New frmGrafo(Me.MatrizCaminos)
        form.Show()
        form.Refresh()
    End Sub

    Private Sub btnGuardar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnGuardar.Click
        Me.Close()
    End Sub

    Private Sub btnCancelar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancelar.Click
        Dim nuevamatriz(,,) As Integer
        Me.MatrizCaminos = nuevamatriz
        Me.Close()
    End Sub
End Class